\documentclass[a4paper,twoside]{article}
\usepackage[procnames,noindent]{lgrind}
\usepackage{fancyhdr,a4wide}
\usepackage{german}
\usepackage{makeidx}
\pagestyle{fancy}

\makeindex

\begin{document}
\renewcommand{\footrulewidth}{0.4pt}
\fancyhead[C]{\lgrindhead}
\fancyhead[LO,RE]{\lgrindfilesize~Bytes\\\lgrindmodtime}
\fancyhead[RO,LE]{\bfseries \lgrindfilename\\\lgrindmodday.\lgrindmodmonth.\lgrindmodyear}
\fancyfoot[C]{\bfseries\thepage}
\setlength{\headheight}{24pt}
\begin{lgrind}
\BGfont
\File{huffman.h}{2004}{3}{12}{6:31}{1526}
\L{\LB{\K{\#ifndef}_\V{HUFFMAN}}}
\L{\LB{\K{\#define}_\V{HUFFMAN}}}
\L{\LB{}}
\L{\LB{\K{\#include}_\S{}\3bf.h\3\SE{}}}
\L{\LB{}}
\L{\LB{\K{typedef}_\K{struct}_\V{huff\_node\_struct}_\{}}
\L{\LB{}\Tab{2}{\K{int}_\V{w};}\Tab{19}{\C{}//_le_poids\CE{}}}
\L{\LB{}\Tab{2}{\K{int}_\V{c};}\Tab{19}{\C{}//_le_caractere\CE{}}}
\L{\LB{}\Tab{2}{\K{int}_\V{gdbh\_index};}\Tab{19}{\C{}//_index_dans_gdbh\CE{}}}
\L{\LB{}\Tab{2}{\K{struct}_\V{huff\_node\_struct}_*\V{father};}\Tab{36}{}}
\L{\LB{}\Tab{2}{\K{struct}_\V{huff\_node\_struct}_*\V{left};}}
\L{\LB{}\Tab{2}{\K{struct}_\V{huff\_node\_struct}_*\V{right};}}
\L{\LB{\}_*\V{huff\_node};}}
\L{\LB{}}
\L{\LB{\K{typedef}_\K{struct}_\V{huff\_tree\_struct}_\{}}
\L{\LB{}\Tab{2}{\V{huff\_node}_\V{root};}\Tab{24}{\C{}//_la_racine\CE{}}}
\L{\LB{}\Tab{2}{\V{huff\_node}_\V{special};}\Tab{24}{\C{}//_le_pere_de_diese\CE{}}}
\L{\LB{}\Tab{2}{\V{huff\_node}_\V{chars}[\N{256}];_\C{}//_hash_char_-\!\>_huff\_node\CE{}}}
\L{\LB{}\Tab{2}{\V{huff\_node}_\V{gdbh}[\N{512}];}\Tab{24}{\C{}//_l{'}ordre_gdbh\CE{}}}
\L{\LB{}\Tab{2}{\K{int}_\V{count};}\Tab{24}{\C{}//_nobre_de_symboles\CE{}}}
\L{\LB{\}_\V{huff\_tree};}}
\L{\LB{}}
\L{\LB{\K{typedef}_\K{struct}_\V{huff\_code\_struct}_\{}}
\L{\LB{}\Tab{2}{\K{int}_\V{length};}\Tab{15}{\C{}//_la_longueur_de_ce_code\CE{}}}
\L{\LB{}\Tab{2}{\K{int}_\V{bits};}\Tab{15}{\C{}//_et_le_code\CE{}}}
\L{\LB{\}_*\V{huff\_code};}}
\L{\LB{}}
\L{\LB{\K{extern}_\V{huff\_tree}_\V{thetree};}}
\L{\LB{}}
\L{\LB{\K{void}}\Tab{10}{\V{huff\_code\_tostring}_(\V{huff\_code}_\K{this});}}
\L{\LB{}}
\L{\LB{\V{huff\_node}_\V{huff\_node\_new}_();}}
\L{\LB{\K{void}}\Tab{10}{\V{huff\_node\_init}_(\V{huff\_node}_\K{this},_\K{int}_\V{w},_\K{int}_\V{c},_\V{huff\_node}_\V{f},_\V{huff\_node}_\V{l},_\V{huff\_node}_\V{r},_\K{int}_\V{i});}}
\L{\LB{\K{void}}\Tab{10}{\V{huff\_node\_tostring}_(\V{huff\_node}_\K{this});}}
\L{\LB{\K{void}}\Tab{10}{\V{huff\_node\_exchange}_(\V{huff\_node}_\V{q},_\V{huff\_node}_\V{r});}}
\L{\LB{\K{int}}\Tab{10}{\V{huff\_node\_isgdbh}_(\V{huff\_node}_\K{this});}}
\L{\LB{\V{huff\_node}_\V{huff\_node\_eob}_(\V{huff\_node}_\K{this});}}
\L{\LB{\K{void}}\Tab{10}{\V{huff\_node\_get\_code}_(\V{huff\_node}_\K{this},_\V{huff\_code}_\V{res});}}
\L{\LB{\K{int}}\Tab{10}{\V{huff\_node\_isspecial}_(\V{huff\_node}_\K{this});}}
\L{\LB{\K{int}}\Tab{10}{\V{huff\_node\_isleaf}_(\V{huff\_node}_\K{this});}}
\L{\LB{}}
\L{\LB{\K{void}}\Tab{10}{\V{huff\_tree\_init}_(\K{int}_\V{c});}}
\L{\LB{\K{void}}\Tab{10}{\V{huff\_tree\_tostring}_();}}
\L{\LB{\K{void}}\Tab{10}{\V{huff\_tree\_update}_(\V{huff\_node}_\V{q});}}
\L{\LB{\K{void}}\Tab{10}{\V{huff\_tree\_modify}_(\K{int}_\V{c});}}
\L{\LB{}}
\L{\LB{}}
\L{\LB{\K{int}_\V{huff\_getcode}_(\K{int}_\V{c},_\V{huff\_code}_\V{res});}}
\L{\LB{\K{void}_\V{huff\_putcode}_(\V{bf\_stream}_\V{bf},_\V{huff\_code}_\V{c});}}
\L{\LB{\K{void}_\V{huff\_special\_code}_(\V{huff\_code}_\V{res});}}
\L{\LB{}}
\L{\LB{\K{\#endif}}}
\end{lgrind}
\printindex
\end{document}